use strict;
use warnings;

TEST('vgatherdpd xmm1, qword [ebp+xmm7*2+0], xmm2      ', [0xc4,0xe2,0xe9,0x92,0x4c,0x7d,0x00               ], 'MODE32');
TEST('vgatherdpd ymm1, qword [ebp+xmm7*2+0], ymm2      ', [0xc4,0xe2,0xed,0x92,0x4c,0x7d,0x00               ], 'MODE32');
TEST('vgatherdpd ymm6, qword [xmm4*1+0x8], ymm5        ', [0xc4,0xe2,0xd5,0x92,0x34,0x25,0x08,0x00,0x00,0x00], 'MODE32');
TEST('vgatherdpd ymm6, qword [xmm4*1-0x8], ymm5        ', [0xc4,0xe2,0xd5,0x92,0x34,0x25,0xf8,0xff,0xff,0xff], 'MODE32');
TEST('vgatherdpd ymm6, qword [xmm4*1+0x00000000], ymm5 ', [0xc4,0xe2,0xd5,0x92,0x34,0x25,0x00,0x00,0x00,0x00], 'MODE32');
TEST('vgatherdpd ymm6, qword [xmm4*1+0x298], ymm5      ', [0xc4,0xe2,0xd5,0x92,0x34,0x25,0x98,0x02,0x00,0x00], 'MODE32');
TEST('vgatherdpd ymm6, qword [xmm4*8+0x8], ymm5        ', [0xc4,0xe2,0xd5,0x92,0x34,0xe5,0x08,0x00,0x00,0x00], 'MODE32');
TEST('vgatherdpd ymm6, qword [xmm4*8-0x8], ymm5        ', [0xc4,0xe2,0xd5,0x92,0x34,0xe5,0xf8,0xff,0xff,0xff], 'MODE32');
TEST('vgatherdpd ymm6, qword [xmm4*8+0x00000000], ymm5 ', [0xc4,0xe2,0xd5,0x92,0x34,0xe5,0x00,0x00,0x00,0x00], 'MODE32');
TEST('vgatherdpd ymm6, qword [xmm4*8+0x298], ymm5      ', [0xc4,0xe2,0xd5,0x92,0x34,0xe5,0x98,0x02,0x00,0x00], 'MODE32');
TEST('vgatherdpd xmm1, qword [rbp+xmm7*2+0], xmm2      ', [0xc4,0xe2,0xe9,0x92,0x4c,0x7d,0x00               ], 'MODE64');
TEST('vgatherdpd ymm1, qword [rbp+xmm7*2+0], ymm2      ', [0xc4,0xe2,0xed,0x92,0x4c,0x7d,0x00               ], 'MODE64');
TEST('vgatherdpd xmm11, qword [r13+xmm14*2+0], xmm12   ', [0xc4,0x02,0x99,0x92,0x5c,0x75,0x00               ], 'MODE64');
TEST('vgatherdpd ymm11, qword [r13+xmm14*2+0], ymm12   ', [0xc4,0x02,0x9d,0x92,0x5c,0x75,0x00               ], 'MODE64');
TEST('vgatherdpd ymm6, qword [xmm4*1+0x8], ymm5        ', [0xc4,0xe2,0xd5,0x92,0x34,0x25,0x08,0x00,0x00,0x00], 'MODE64');
TEST('vgatherdpd ymm6, qword [xmm4*1-0x8], ymm5        ', [0xc4,0xe2,0xd5,0x92,0x34,0x25,0xf8,0xff,0xff,0xff], 'MODE64');
TEST('vgatherdpd ymm6, qword [xmm4*1+0x00000000], ymm5 ', [0xc4,0xe2,0xd5,0x92,0x34,0x25,0x00,0x00,0x00,0x00], 'MODE64');
TEST('vgatherdpd ymm6, qword [xmm4*1+0x298], ymm5      ', [0xc4,0xe2,0xd5,0x92,0x34,0x25,0x98,0x02,0x00,0x00], 'MODE64');
TEST('vgatherdpd ymm6, qword [xmm4*8+0x8], ymm5        ', [0xc4,0xe2,0xd5,0x92,0x34,0xe5,0x08,0x00,0x00,0x00], 'MODE64');
TEST('vgatherdpd ymm6, qword [xmm4*8-0x8], ymm5        ', [0xc4,0xe2,0xd5,0x92,0x34,0xe5,0xf8,0xff,0xff,0xff], 'MODE64');
TEST('vgatherdpd ymm6, qword [xmm4*8+0x00000000], ymm5 ', [0xc4,0xe2,0xd5,0x92,0x34,0xe5,0x00,0x00,0x00,0x00], 'MODE64');
TEST('vgatherdpd ymm6, qword [xmm4*8+0x298], ymm5      ', [0xc4,0xe2,0xd5,0x92,0x34,0xe5,0x98,0x02,0x00,0x00], 'MODE64');
TEST('vgatherdpd ymm6, qword [xmm14*1+0x8], ymm5       ', [0xc4,0xa2,0xd5,0x92,0x34,0x35,0x08,0x00,0x00,0x00], 'MODE64');
TEST('vgatherdpd ymm6, qword [xmm14*1-0x8], ymm5       ', [0xc4,0xa2,0xd5,0x92,0x34,0x35,0xf8,0xff,0xff,0xff], 'MODE64');
TEST('vgatherdpd ymm6, qword [xmm14*1+0x00000000], ymm5', [0xc4,0xa2,0xd5,0x92,0x34,0x35,0x00,0x00,0x00,0x00], 'MODE64');
TEST('vgatherdpd ymm6, qword [xmm14*1+0x298], ymm5     ', [0xc4,0xa2,0xd5,0x92,0x34,0x35,0x98,0x02,0x00,0x00], 'MODE64');
TEST('vgatherdpd ymm6, qword [xmm14*8+0x8], ymm5       ', [0xc4,0xa2,0xd5,0x92,0x34,0xf5,0x08,0x00,0x00,0x00], 'MODE64');
TEST('vgatherdpd ymm6, qword [xmm14*8-0x8], ymm5       ', [0xc4,0xa2,0xd5,0x92,0x34,0xf5,0xf8,0xff,0xff,0xff], 'MODE64');
TEST('vgatherdpd ymm6, qword [xmm14*8+0x00000000], ymm5', [0xc4,0xa2,0xd5,0x92,0x34,0xf5,0x00,0x00,0x00,0x00], 'MODE64');
TEST('vgatherdpd ymm6, qword [xmm14*8+0x298], ymm5     ', [0xc4,0xa2,0xd5,0x92,0x34,0xf5,0x98,0x02,0x00,0x00], 'MODE64');

TEST('vgatherdps xmm1, dword [ebp+xmm7*2+0], xmm2      ', [0xc4,0xe2,0x69,0x92,0x4c,0x7d,0x00               ], 'MODE32');
TEST('vgatherdps ymm1, dword [ebp+ymm7*2+0], ymm2      ', [0xc4,0xe2,0x6d,0x92,0x4c,0x7d,0x00               ], 'MODE32');
TEST('vgatherdps xmm6, dword [xmm4*1+0x8], xmm5        ', [0xc4,0xe2,0x51,0x92,0x34,0x25,0x08,0x00,0x00,0x00], 'MODE32');
TEST('vgatherdps xmm6, dword [xmm4*1-0x8], xmm5        ', [0xc4,0xe2,0x51,0x92,0x34,0x25,0xf8,0xff,0xff,0xff], 'MODE32');
TEST('vgatherdps xmm6, dword [xmm4*1+0x00000000], xmm5 ', [0xc4,0xe2,0x51,0x92,0x34,0x25,0x00,0x00,0x00,0x00], 'MODE32');
TEST('vgatherdps xmm6, dword [xmm4*1+0x298], xmm5      ', [0xc4,0xe2,0x51,0x92,0x34,0x25,0x98,0x02,0x00,0x00], 'MODE32');
TEST('vgatherdps xmm6, dword [xmm4*8+0x8], xmm5        ', [0xc4,0xe2,0x51,0x92,0x34,0xe5,0x08,0x00,0x00,0x00], 'MODE32');
TEST('vgatherdps xmm6, dword [xmm4*8-0x8], xmm5        ', [0xc4,0xe2,0x51,0x92,0x34,0xe5,0xf8,0xff,0xff,0xff], 'MODE32');
TEST('vgatherdps xmm6, dword [xmm4*8+0x00000000], xmm5 ', [0xc4,0xe2,0x51,0x92,0x34,0xe5,0x00,0x00,0x00,0x00], 'MODE32');
TEST('vgatherdps xmm6, dword [xmm4*8+0x298], xmm5      ', [0xc4,0xe2,0x51,0x92,0x34,0xe5,0x98,0x02,0x00,0x00], 'MODE32');
TEST('vgatherdps xmm1, dword [rbp+xmm7*2+0], xmm2      ', [0xc4,0xe2,0x69,0x92,0x4c,0x7d,0x00               ], 'MODE64');
TEST('vgatherdps ymm1, dword [rbp+ymm7*2+0], ymm2      ', [0xc4,0xe2,0x6d,0x92,0x4c,0x7d,0x00               ], 'MODE64');
TEST('vgatherdps xmm11, dword [r13+xmm14*2+0], xmm12   ', [0xc4,0x02,0x19,0x92,0x5c,0x75,0x00               ], 'MODE64');
TEST('vgatherdps ymm11, dword [r13+ymm14*2+0], ymm12   ', [0xc4,0x02,0x1d,0x92,0x5c,0x75,0x00               ], 'MODE64');
TEST('vgatherdps xmm6, dword [xmm4*1+0x8], xmm5        ', [0xc4,0xe2,0x51,0x92,0x34,0x25,0x08,0x00,0x00,0x00], 'MODE64');
TEST('vgatherdps xmm6, dword [xmm4*1-0x8], xmm5        ', [0xc4,0xe2,0x51,0x92,0x34,0x25,0xf8,0xff,0xff,0xff], 'MODE64');
TEST('vgatherdps xmm6, dword [xmm4*1+0x00000000], xmm5 ', [0xc4,0xe2,0x51,0x92,0x34,0x25,0x00,0x00,0x00,0x00], 'MODE64');
TEST('vgatherdps xmm6, dword [xmm4*1+0x298], xmm5      ', [0xc4,0xe2,0x51,0x92,0x34,0x25,0x98,0x02,0x00,0x00], 'MODE64');
TEST('vgatherdps xmm6, dword [xmm4*8+0x8], xmm5        ', [0xc4,0xe2,0x51,0x92,0x34,0xe5,0x08,0x00,0x00,0x00], 'MODE64');
TEST('vgatherdps xmm6, dword [xmm4*8-0x8], xmm5        ', [0xc4,0xe2,0x51,0x92,0x34,0xe5,0xf8,0xff,0xff,0xff], 'MODE64');
TEST('vgatherdps xmm6, dword [xmm4*8+0x00000000], xmm5 ', [0xc4,0xe2,0x51,0x92,0x34,0xe5,0x00,0x00,0x00,0x00], 'MODE64');
TEST('vgatherdps xmm6, dword [xmm4*8+0x298], xmm5      ', [0xc4,0xe2,0x51,0x92,0x34,0xe5,0x98,0x02,0x00,0x00], 'MODE64');
TEST('vgatherdps xmm6, dword [xmm14*1+0x8], xmm5       ', [0xc4,0xa2,0x51,0x92,0x34,0x35,0x08,0x00,0x00,0x00], 'MODE64');
TEST('vgatherdps xmm6, dword [xmm14*1-0x8], xmm5       ', [0xc4,0xa2,0x51,0x92,0x34,0x35,0xf8,0xff,0xff,0xff], 'MODE64');
TEST('vgatherdps xmm6, dword [xmm14*1+0x00000000], xmm5', [0xc4,0xa2,0x51,0x92,0x34,0x35,0x00,0x00,0x00,0x00], 'MODE64');
TEST('vgatherdps xmm6, dword [xmm14*1+0x298], xmm5     ', [0xc4,0xa2,0x51,0x92,0x34,0x35,0x98,0x02,0x00,0x00], 'MODE64');
TEST('vgatherdps xmm6, dword [xmm14*8+0x8], xmm5       ', [0xc4,0xa2,0x51,0x92,0x34,0xf5,0x08,0x00,0x00,0x00], 'MODE64');
TEST('vgatherdps xmm6, dword [xmm14*8-0x8], xmm5       ', [0xc4,0xa2,0x51,0x92,0x34,0xf5,0xf8,0xff,0xff,0xff], 'MODE64');
TEST('vgatherdps xmm6, dword [xmm14*8+0x00000000], xmm5', [0xc4,0xa2,0x51,0x92,0x34,0xf5,0x00,0x00,0x00,0x00], 'MODE64');
TEST('vgatherdps xmm6, dword [xmm14*8+0x298], xmm5     ', [0xc4,0xa2,0x51,0x92,0x34,0xf5,0x98,0x02,0x00,0x00], 'MODE64');

TEST('vgatherqpd xmm1, qword [ebp+xmm7*2+0], xmm2   ', [0xc4,0xe2,0xe9,0x93,0x4c,0x7d,0x00], 'MODE32');
TEST('vgatherqpd ymm1, qword [ebp+ymm7*2+0], ymm2   ', [0xc4,0xe2,0xed,0x93,0x4c,0x7d,0x00], 'MODE32');
TEST('vgatherqpd xmm1, qword [rbp+xmm7*2+0], xmm2   ', [0xc4,0xe2,0xe9,0x93,0x4c,0x7d,0x00], 'MODE64');
TEST('vgatherqpd ymm1, qword [rbp+ymm7*2+0], ymm2   ', [0xc4,0xe2,0xed,0x93,0x4c,0x7d,0x00], 'MODE64');
TEST('vgatherqpd xmm11, qword [r13+xmm14*2+0], xmm12', [0xc4,0x02,0x99,0x93,0x5c,0x75,0x00], 'MODE64');
TEST('vgatherqpd ymm11, qword [r13+ymm14*2+0], ymm12', [0xc4,0x02,0x9d,0x93,0x5c,0x75,0x00], 'MODE64');

TEST('vgatherqps xmm1, dword [ebp+xmm7*2+0], xmm2   ', [0xc4,0xe2,0x69,0x93,0x4c,0x7d,0x00], 'MODE32');
TEST('vgatherqps xmm1, dword [ebp+ymm7*2+0], xmm2   ', [0xc4,0xe2,0x6d,0x93,0x4c,0x7d,0x00], 'MODE32');
TEST('vgatherqps xmm1, dword [rbp+xmm7*2+0], xmm2   ', [0xc4,0xe2,0x69,0x93,0x4c,0x7d,0x00], 'MODE64');
TEST('vgatherqps xmm1, dword [rbp+ymm7*2+0], xmm2   ', [0xc4,0xe2,0x6d,0x93,0x4c,0x7d,0x00], 'MODE64');
TEST('vgatherqps xmm11, dword [r13+xmm14*2+0], xmm12', [0xc4,0x02,0x19,0x93,0x5c,0x75,0x00], 'MODE64');
TEST('vgatherqps xmm11, dword [r13+ymm14*2+0], xmm12', [0xc4,0x02,0x1d,0x93,0x5c,0x75,0x00], 'MODE64');

TEST('vpgatherdd xmm1, dword [ebp+xmm7*2+0], xmm2      ', [0xc4,0xe2,0x69,0x90,0x4c,0x7d,0x00               ], 'MODE32');
TEST('vpgatherdd ymm1, dword [ebp+ymm7*2+0], ymm2      ', [0xc4,0xe2,0x6d,0x90,0x4c,0x7d,0x00               ], 'MODE32');
TEST('vpgatherdd xmm6, dword [xmm4*1+0x8], xmm5        ', [0xc4,0xe2,0x51,0x90,0x34,0x25,0x08,0x00,0x00,0x00], 'MODE32');
TEST('vpgatherdd xmm6, dword [xmm4*1-0x8], xmm5        ', [0xc4,0xe2,0x51,0x90,0x34,0x25,0xf8,0xff,0xff,0xff], 'MODE32');
TEST('vpgatherdd xmm6, dword [xmm4*1+0x00000000], xmm5 ', [0xc4,0xe2,0x51,0x90,0x34,0x25,0x00,0x00,0x00,0x00], 'MODE32');
TEST('vpgatherdd xmm6, dword [xmm4*1+0x298], xmm5      ', [0xc4,0xe2,0x51,0x90,0x34,0x25,0x98,0x02,0x00,0x00], 'MODE32');
TEST('vpgatherdd xmm6, dword [xmm4*8+0x8], xmm5        ', [0xc4,0xe2,0x51,0x90,0x34,0xe5,0x08,0x00,0x00,0x00], 'MODE32');
TEST('vpgatherdd xmm6, dword [xmm4*8-0x8], xmm5        ', [0xc4,0xe2,0x51,0x90,0x34,0xe5,0xf8,0xff,0xff,0xff], 'MODE32');
TEST('vpgatherdd xmm6, dword [xmm4*8+0x00000000], xmm5 ', [0xc4,0xe2,0x51,0x90,0x34,0xe5,0x00,0x00,0x00,0x00], 'MODE32');
TEST('vpgatherdd xmm6, dword [xmm4*8+0x298], xmm5      ', [0xc4,0xe2,0x51,0x90,0x34,0xe5,0x98,0x02,0x00,0x00], 'MODE32');
TEST('vpgatherdd xmm1, dword [rbp+xmm7*2+0], xmm2      ', [0xc4,0xe2,0x69,0x90,0x4c,0x7d,0x00               ], 'MODE64');
TEST('vpgatherdd ymm1, dword [rbp+ymm7*2+0], ymm2      ', [0xc4,0xe2,0x6d,0x90,0x4c,0x7d,0x00               ], 'MODE64');
TEST('vpgatherdd xmm11, dword [r13+xmm14*2+0], xmm12   ', [0xc4,0x02,0x19,0x90,0x5c,0x75,0x00               ], 'MODE64');
TEST('vpgatherdd ymm11, dword [r13+ymm14*2+0], ymm12   ', [0xc4,0x02,0x1d,0x90,0x5c,0x75,0x00               ], 'MODE64');
TEST('vpgatherdd xmm6, dword [xmm4*1+0x8], xmm5        ', [0xc4,0xe2,0x51,0x90,0x34,0x25,0x08,0x00,0x00,0x00], 'MODE64');
TEST('vpgatherdd xmm6, dword [xmm4*1-0x8], xmm5        ', [0xc4,0xe2,0x51,0x90,0x34,0x25,0xf8,0xff,0xff,0xff], 'MODE64');
TEST('vpgatherdd xmm6, dword [xmm4*1+0x00000000], xmm5 ', [0xc4,0xe2,0x51,0x90,0x34,0x25,0x00,0x00,0x00,0x00], 'MODE64');
TEST('vpgatherdd xmm6, dword [xmm4*1+0x298], xmm5      ', [0xc4,0xe2,0x51,0x90,0x34,0x25,0x98,0x02,0x00,0x00], 'MODE64');
TEST('vpgatherdd xmm6, dword [xmm4*8+0x8], xmm5        ', [0xc4,0xe2,0x51,0x90,0x34,0xe5,0x08,0x00,0x00,0x00], 'MODE64');
TEST('vpgatherdd xmm6, dword [xmm4*8-0x8], xmm5        ', [0xc4,0xe2,0x51,0x90,0x34,0xe5,0xf8,0xff,0xff,0xff], 'MODE64');
TEST('vpgatherdd xmm6, dword [xmm4*8+0x00000000], xmm5 ', [0xc4,0xe2,0x51,0x90,0x34,0xe5,0x00,0x00,0x00,0x00], 'MODE64');
TEST('vpgatherdd xmm6, dword [xmm4*8+0x298], xmm5      ', [0xc4,0xe2,0x51,0x90,0x34,0xe5,0x98,0x02,0x00,0x00], 'MODE64');
TEST('vpgatherdd xmm6, dword [xmm14*1+0x8], xmm5       ', [0xc4,0xa2,0x51,0x90,0x34,0x35,0x08,0x00,0x00,0x00], 'MODE64');
TEST('vpgatherdd xmm6, dword [xmm14*1-0x8], xmm5       ', [0xc4,0xa2,0x51,0x90,0x34,0x35,0xf8,0xff,0xff,0xff], 'MODE64');
TEST('vpgatherdd xmm6, dword [xmm14*1+0x00000000], xmm5', [0xc4,0xa2,0x51,0x90,0x34,0x35,0x00,0x00,0x00,0x00], 'MODE64');
TEST('vpgatherdd xmm6, dword [xmm14*1+0x298], xmm5     ', [0xc4,0xa2,0x51,0x90,0x34,0x35,0x98,0x02,0x00,0x00], 'MODE64');
TEST('vpgatherdd xmm6, dword [xmm14*8+0x8], xmm5       ', [0xc4,0xa2,0x51,0x90,0x34,0xf5,0x08,0x00,0x00,0x00], 'MODE64');
TEST('vpgatherdd xmm6, dword [xmm14*8-0x8], xmm5       ', [0xc4,0xa2,0x51,0x90,0x34,0xf5,0xf8,0xff,0xff,0xff], 'MODE64');
TEST('vpgatherdd xmm6, dword [xmm14*8+0x00000000], xmm5', [0xc4,0xa2,0x51,0x90,0x34,0xf5,0x00,0x00,0x00,0x00], 'MODE64');
TEST('vpgatherdd xmm6, dword [xmm14*8+0x298], xmm5     ', [0xc4,0xa2,0x51,0x90,0x34,0xf5,0x98,0x02,0x00,0x00], 'MODE64');

TEST('vpgatherdq xmm1, qword [ebp+xmm7*2+0], xmm2      ', [0xc4,0xe2,0xe9,0x90,0x4c,0x7d,0x00               ], 'MODE32');
TEST('vpgatherdq ymm1, qword [ebp+xmm7*2+0], ymm2      ', [0xc4,0xe2,0xed,0x90,0x4c,0x7d,0x00               ], 'MODE32');
TEST('vpgatherdq ymm6, qword [xmm4*1+0x8], ymm5        ', [0xc4,0xe2,0xd5,0x90,0x34,0x25,0x08,0x00,0x00,0x00], 'MODE32');
TEST('vpgatherdq ymm6, qword [xmm4*1-0x8], ymm5        ', [0xc4,0xe2,0xd5,0x90,0x34,0x25,0xf8,0xff,0xff,0xff], 'MODE32');
TEST('vpgatherdq ymm6, qword [xmm4*1+0x00000000], ymm5 ', [0xc4,0xe2,0xd5,0x90,0x34,0x25,0x00,0x00,0x00,0x00], 'MODE32');
TEST('vpgatherdq ymm6, qword [xmm4*1+0x298], ymm5      ', [0xc4,0xe2,0xd5,0x90,0x34,0x25,0x98,0x02,0x00,0x00], 'MODE32');
TEST('vpgatherdq ymm6, qword [xmm4*8+0x8], ymm5        ', [0xc4,0xe2,0xd5,0x90,0x34,0xe5,0x08,0x00,0x00,0x00], 'MODE32');
TEST('vpgatherdq ymm6, qword [xmm4*8-0x8], ymm5        ', [0xc4,0xe2,0xd5,0x90,0x34,0xe5,0xf8,0xff,0xff,0xff], 'MODE32');
TEST('vpgatherdq ymm6, qword [xmm4*8+0x00000000], ymm5 ', [0xc4,0xe2,0xd5,0x90,0x34,0xe5,0x00,0x00,0x00,0x00], 'MODE32');
TEST('vpgatherdq ymm6, qword [xmm4*8+0x298], ymm5      ', [0xc4,0xe2,0xd5,0x90,0x34,0xe5,0x98,0x02,0x00,0x00], 'MODE32');
TEST('vpgatherdq xmm1, qword [rbp+xmm7*2+0], xmm2      ', [0xc4,0xe2,0xe9,0x90,0x4c,0x7d,0x00               ], 'MODE64');
TEST('vpgatherdq ymm1, qword [rbp+xmm7*2+0], ymm2      ', [0xc4,0xe2,0xed,0x90,0x4c,0x7d,0x00               ], 'MODE64');
TEST('vpgatherdq xmm11, qword [r13+xmm14*2+0], xmm12   ', [0xc4,0x02,0x99,0x90,0x5c,0x75,0x00               ], 'MODE64');
TEST('vpgatherdq ymm11, qword [r13+xmm14*2+0], ymm12   ', [0xc4,0x02,0x9d,0x90,0x5c,0x75,0x00               ], 'MODE64');
TEST('vpgatherdq ymm6, qword [xmm4*1+0x8], ymm5        ', [0xc4,0xe2,0xd5,0x90,0x34,0x25,0x08,0x00,0x00,0x00], 'MODE64');
TEST('vpgatherdq ymm6, qword [xmm4*1-0x8], ymm5        ', [0xc4,0xe2,0xd5,0x90,0x34,0x25,0xf8,0xff,0xff,0xff], 'MODE64');
TEST('vpgatherdq ymm6, qword [xmm4*1+0x00000000], ymm5 ', [0xc4,0xe2,0xd5,0x90,0x34,0x25,0x00,0x00,0x00,0x00], 'MODE64');
TEST('vpgatherdq ymm6, qword [xmm4*1+0x298], ymm5      ', [0xc4,0xe2,0xd5,0x90,0x34,0x25,0x98,0x02,0x00,0x00], 'MODE64');
TEST('vpgatherdq ymm6, qword [xmm4*8+0x8], ymm5        ', [0xc4,0xe2,0xd5,0x90,0x34,0xe5,0x08,0x00,0x00,0x00], 'MODE64');
TEST('vpgatherdq ymm6, qword [xmm4*8-0x8], ymm5        ', [0xc4,0xe2,0xd5,0x90,0x34,0xe5,0xf8,0xff,0xff,0xff], 'MODE64');
TEST('vpgatherdq ymm6, qword [xmm4*8+0x00000000], ymm5 ', [0xc4,0xe2,0xd5,0x90,0x34,0xe5,0x00,0x00,0x00,0x00], 'MODE64');
TEST('vpgatherdq ymm6, qword [xmm4*8+0x298], ymm5      ', [0xc4,0xe2,0xd5,0x90,0x34,0xe5,0x98,0x02,0x00,0x00], 'MODE64');
TEST('vpgatherdq ymm6, qword [xmm14*1+0x8], ymm5       ', [0xc4,0xa2,0xd5,0x90,0x34,0x35,0x08,0x00,0x00,0x00], 'MODE64');
TEST('vpgatherdq ymm6, qword [xmm14*1-0x8], ymm5       ', [0xc4,0xa2,0xd5,0x90,0x34,0x35,0xf8,0xff,0xff,0xff], 'MODE64');
TEST('vpgatherdq ymm6, qword [xmm14*1+0x00000000], ymm5', [0xc4,0xa2,0xd5,0x90,0x34,0x35,0x00,0x00,0x00,0x00], 'MODE64');
TEST('vpgatherdq ymm6, qword [xmm14*1+0x298], ymm5     ', [0xc4,0xa2,0xd5,0x90,0x34,0x35,0x98,0x02,0x00,0x00], 'MODE64');
TEST('vpgatherdq ymm6, qword [xmm14*8+0x8], ymm5       ', [0xc4,0xa2,0xd5,0x90,0x34,0xf5,0x08,0x00,0x00,0x00], 'MODE64');
TEST('vpgatherdq ymm6, qword [xmm14*8-0x8], ymm5       ', [0xc4,0xa2,0xd5,0x90,0x34,0xf5,0xf8,0xff,0xff,0xff], 'MODE64');
TEST('vpgatherdq ymm6, qword [xmm14*8+0x00000000], ymm5', [0xc4,0xa2,0xd5,0x90,0x34,0xf5,0x00,0x00,0x00,0x00], 'MODE64');
TEST('vpgatherdq ymm6, qword [xmm14*8+0x298], ymm5     ', [0xc4,0xa2,0xd5,0x90,0x34,0xf5,0x98,0x02,0x00,0x00], 'MODE64');

TEST('vpgatherqd xmm1, dword [ebp+xmm7*2+0], xmm2   ', [0xc4,0xe2,0x69,0x91,0x4c,0x7d,0x00], 'MODE32');
TEST('vpgatherqd xmm1, dword [ebp+ymm7*2+0], xmm2   ', [0xc4,0xe2,0x6d,0x91,0x4c,0x7d,0x00], 'MODE32');
TEST('vpgatherqd xmm1, dword [rbp+xmm7*2+0], xmm2   ', [0xc4,0xe2,0x69,0x91,0x4c,0x7d,0x00], 'MODE64');
TEST('vpgatherqd xmm1, dword [rbp+ymm7*2+0], xmm2   ', [0xc4,0xe2,0x6d,0x91,0x4c,0x7d,0x00], 'MODE64');
TEST('vpgatherqd xmm11, dword [r13+xmm14*2+0], xmm12', [0xc4,0x02,0x19,0x91,0x5c,0x75,0x00], 'MODE64');
TEST('vpgatherqd xmm11, dword [r13+ymm14*2+0], xmm12', [0xc4,0x02,0x1d,0x91,0x5c,0x75,0x00], 'MODE64');

TEST('vpgatherqq xmm1, qword [ebp+xmm7*2+0], xmm2   ', [0xc4,0xe2,0xe9,0x91,0x4c,0x7d,0x00], 'MODE32');
TEST('vpgatherqq ymm1, qword [ebp+ymm7*2+0], ymm2   ', [0xc4,0xe2,0xed,0x91,0x4c,0x7d,0x00], 'MODE32');
TEST('vpgatherqq xmm1, qword [rbp+xmm7*2+0], xmm2   ', [0xc4,0xe2,0xe9,0x91,0x4c,0x7d,0x00], 'MODE64');
TEST('vpgatherqq ymm1, qword [rbp+ymm7*2+0], ymm2   ', [0xc4,0xe2,0xed,0x91,0x4c,0x7d,0x00], 'MODE64');
TEST('vpgatherqq xmm11, qword [r13+xmm14*2+0], xmm12', [0xc4,0x02,0x99,0x91,0x5c,0x75,0x00], 'MODE64');
TEST('vpgatherqq ymm11, qword [r13+ymm14*2+0], ymm12', [0xc4,0x02,0x9d,0x91,0x5c,0x75,0x00], 'MODE64');

